A major bottleneck in the use of advanced machine-learning (“ML”) techniques and tools today is that they require a substantial technical skill level to operate. While data is becoming increasingly easy to collect, store and manipulate for lay persons, analysis tools are not keeping pace.
Many machine-learning (ML) algorithms exist today that can allow their users to automatically generate computational models for prediction and optimization. For example, Neural networks, Support vector machines, decision trees, symbolic regression, and other techniques create a mathematical model that can be applied to predict dependent values from new independent variables, based on examples (training data). These models can be used to predict values in static tables as well as in dynamic time series. Vector equations that predict multiple values simultaneously (e.g., x, y coordinates) are also available. Conventionally, users specify a query that the ML system solves, delivering a model that can be used for the predictions, regression, or classification of values.
In addition to predicting unknown dependent values, ML models can also be used for optimization. Search algorithms such as gradient ascent or global search algorithms such as Genetic Algorithms can be used to search for an optimal set of independent variables such that the dependent variable is maximized or minimized, or becomes as close as possible to a desired value. Again, in order to interact with the system, the user specifies the boundaries of the optimization problem and any constraints that apply.